import Toast from './Toast'

const toast = {
  // 在使用Vue.use时会自动调用install函数
  install(Vue) {
    // 创建组件构造器
    const toastContrustor = Vue.extend(Toast)
    // 通过组件构造器 new一个组件对象
    const toast = new toastContrustor()
    // 将组件对象手动挂载到某一个元素上
    toast.$mount(document.createElement('div'))
    // 此时toast.$el就是刚才创建的div
    document.body.appendChild(toast.$el)

    // 给Vue原型添加Toast方法
    Vue.prototype.$total = (message = '还未输入准确的信息', duration = 3000) => {
      toast.message = message
      toast.visible = true

      setTimeout(() => {
        toast.visible = false
        toast.message = ''
      }, duration)
    }
  }
}

export default toast
